In some digital imaging systems, it is desirable to convey ancillary information along with the actual data that comprises an original image. This ancillary information might be directly derived from the image, or it might represent additional information that is related to, but not directly derived from, the image itself. In either case, this ancillary information is called image "meta-data" throughout this text.
An example of meta-data that is directly derived from the original image data is a hash value. A hash value is a very compact representation of the much larger original image data set, and it is generated using a hashing function. An example of a useful hashing function is found in U.S. Department of Commerce Technology Administration National Institute of Standards and Technology, FIPS PUB 180, "Secure Hash Standard," May 11, 1993, pp. 1-20. This hashing function will produce a hash value of length 162 bits, irrespective of the number of pixel values that are input to the hashing function. Other hashing functions may produce hash values of lengths other than 162 bits. While a hash value is not entirely unique to a given image (i.e., the process is a many-to-one mapping), it can be chosen so as to represent the image with extremely high probability. A hash value can be appended to the original image and then used at a later time to verify that the image has not been modified in any way since the hash value was generated. To prevent tampering of the hash value by unauthorized individuals, it is necessary to encrypt the hash value, thus creating a secure digital signature for the original image data. However, the process of appending the encrypted hash value inhibits the use of standard image formats such as TIFF to convey the combined image and signature information. Furthermore, a signature that is merely appended to an image can be easily removed by deleting the portion of the file containing the signature.
Examples of image meta-data that are not directly derived from, but are related to, the original image include the date/time or geographical location of the point of capture, a unique ID associated with the camera and/or photographer, camera settings used during the capture process, etc. It is possible to merely append such meta-data to the image data, but as with the digital signatures this process inhibits the use of standard image file formats. Some file formats provide segments for user-defined information, but such data is unsecured from tampering and could be easily removed by unauthorized individuals. In present techniques, these issues are resolved by embedding the meta-data within the image itself. Standard image file formats such as TIFF can then be used to convey both image data and meta-data, and proper design of the embedding process allows the image containing the embedded data to be directly viewed with only a minimal loss in quality. The embedding process also provides some level of security in that the meta-data can only be recovered with some knowledge of the embedding process (such as a "key" value). However, a disadvantage of the embedding process is that the original image data is typically corrupted to the extent that exact recovery of the original values is impossible. As a result, current data embedding techniques could not be used for the purpose of image verification where the encrypted hash values (i.e., image signatures) are embedded in the image itself (since the proper hash value could never be re-created from the corrupted image values).
It would therefore be desirable to have a technique that overcomes the aforementioned limitations of present techniques for conveying image meta-data (including digital signatures). Specifically, it is desirable to have a technique that:
1. Embeds meta-data into the original image to produce a single image file that is compatible with standard file formats and is directly viewable without any further processing;
2. Provides a reasonable degree of security for the meta-data to prevent tampering or removal by unauthorized individuals; and
3. Allows exact recovery of the original image data from the combined image and embedded data.